import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import AutoImport from 'unplugin-auto-import/vite'
import Components from 'unplugin-vue-components/vite'
import { ElementPlusResolver } from 'unplugin-vue-components/resolvers'
import postCssPxToRem from 'postcss-pxtorem'
import path from 'path' // 编辑器提示 path 模块找不到，可以cnpm i @types/node --dev 即可
// https://vitejs.dev/config/
export default defineConfig({
  base: './',
  plugins: [
    vue(),
    AutoImport({
      resolvers: [ElementPlusResolver()]
    }),
    Components({
      resolvers: [ElementPlusResolver()]
    })
  ], // 默认配置
  css: {
    postcss: {
      plugins: [
        {
          postcssPlugin: 'internal:charset-removal',
          AtRule: {
            charset: (atRule) => {
              if (atRule.name === 'charset') {
                atRule.remove()
              }
            }
          }
        },
        postCssPxToRem({
          rootValue: 192, // 按照自己的设计稿修改 1920/10
          unitPrecision: 5, // 保留到5位小数
          selectorBlackList: ['ignore', 'tab-bar', 'tab-bar-item'], // 忽略转换正则匹配项
          propList: ['*'],
          replace: true,
          mediaQuery: false,
          minPixelValue: 0
        })
      ]
    }
  },
  resolve: {
    alias: {
      views: path.resolve(__dirname, 'src/views'),
      styles: path.resolve(__dirname, 'src/styles'),
      '@': path.resolve(__dirname, 'src')
    }
  }

  // server: {
  //     port: 3000, // 设置服务启动的端口号；如果端口已经被使用，Vite 会自动尝试下一个可用的端口
  //     open: true, // 服务启动后自动打开浏览器
  //     proxy: {
  //         // 代理
  //         '/api': {
  //             target: 'http://jinchao.yunctime.com',
  //             changeOrigin: true,
  //             rewrite: (path) => path.replace(/^\/api/, '') // 注意代理地址的重写
  //         }
  //     }
  // }
})
